package com.inmaytide.website.utils.log.annotation;

import com.inmaytide.website.utils.configurations.SystemConstants;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * 添加该注解的方法自动添加日志记录功能
 *
 * @author luomiao
 * @since May 17, 2016
 */
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface LogInformation {
    /**
     * 日志操作说明
     *
     * @return
     */
    String description();

    /**
     * 操作成功结果信息<br/>
     * <strong>默认值:{@link SystemConstants.LOG_DEFAULT_SUCCESS_MESSAGE}<strong>
     *
     * @return
     */
    String success() default SystemConstants.LOG_DEFAULT_SUCCESS_MESSAGE;

    /**
     * 操作失败结果信息<br/>
     * <strong>默认值:{@link SystemConstants.LOG_DEFAULT_FAILURE_MESSAGE}<br/>
     * 默认读取异常信息的message</strong>
     *
     * @return
     */
    String failure() default SystemConstants.LOG_DEFAULT_FAILURE_MESSAGE;

}
